package com.jtny.nytb.config.dataalarm.dto;

import com.jtny.component.annotation.QueryParamField;
import com.jtny.component.entity.PageParam;
import com.jtny.component.enums.FieldMatchingTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;


@ApiModel(value = "数据报警点管理")
@Data
public class DataAlarmPageQueryParamDTO extends PageParam implements Serializable {

    @ApiModelProperty("参量编号查询条件，精确查询")
    @QueryParamField(columnName = "code", matchingType = FieldMatchingTypeEnum.EQ)
    private String code;

    @ApiModelProperty("参量名称查询条件，模糊查询")
    @QueryParamField(columnName = "name", matchingType = FieldMatchingTypeEnum.LIKE)
    private String name;

    @ApiModelProperty("参量来源：1-手动填报，2-系统计算，3-常量，4-手动填报查询条件，精确查询")
    @QueryParamField(columnName = "source", matchingType = FieldMatchingTypeEnum.EQ)
    private Integer source;

    @ApiModelProperty("报警点名称查询条件，模糊查询")
    @QueryParamField(columnName = "alarm_name", matchingType = FieldMatchingTypeEnum.LIKE)
    private String alarmName;

    @ApiModelProperty("报警分类查询条件，精确查询")
    @QueryParamField(columnName = "alarm_type", matchingType = FieldMatchingTypeEnum.EQ)
    private String alarmType;

    @ApiModelProperty("报警条件查询条件，模糊查询")
    @QueryParamField(columnName = "alarm_condition", matchingType = FieldMatchingTypeEnum.LIKE)
    private String alarmCondition;

    @ApiModelProperty("报警内容查询条件，模糊查询")
    @QueryParamField(columnName = "alarm_describe", matchingType = FieldMatchingTypeEnum.LIKE)
    private String alarmDescribe;

    @ApiModelProperty("报警等级查询条件，精确查询")
    @QueryParamField(columnName = "alarm_class", matchingType = FieldMatchingTypeEnum.EQ)
    private String alarmClass;
}
